The Limits of Alias Analysis for Scalar Optimizations

نویسندگان

  • Rezaul Alam Chowdhury
  • Peter Djeu
  • Brendon Cahoon
  • James H. Burrill
  • Kathryn S. McKinley
چکیده

In theory, increasing alias analysis precision should improve compiler optimizations on C programs. This paper compares alias analysis algorithms on scalar optimizations, including an analysis that assumes no aliases, to establish a very loose upper bound on optimization opportunities. We then measure optimization opportunities on thirty-six C programs. In practice, the optimizations are rarely inhibited due to the precision of the alias analyses. Previous work finds similarly that the increased precision of specific alias algorithms provide little benefit for scalar optimizations, and that simple static alias algorithms find almost all dynamically determined aliases. This paper, however, is the first to provide a static methodology that indicates that additional precision is unlikely to yield improvements for a set of optimizations. For clients with higher alias accuracy demands, this methodology can help pinpoint the need for additional accuracy.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A SUIF Interface to Alias Analysis Results

While prior work has proposed a number of algorithms for computing aliases in C programs[5][6][7], there has been relatively little evaluation of these algorithms[1]. This paper proposes an interface that gives standard dataflow analysis and visualization clients access to “may alias” and “must alias” results produced by multiple alias analysis implementations. The clients can use this abstract...

متن کامل

Building a Bridge between Pointer Aliases and Program Dependences

In this paper we present a surprisingly simple reduction of the program dependence problem to the may-alias problem. While both problems are undecidable, providing a bridge between them has great practical importance. Program dependence information is used extensively in compiler optimizations, automatic program parallelizations, code scheduling in super-scalar machines, and in software enginee...

متن کامل

Building a Bridge Betweenpointer Aliases and Program

In this paper we present a surprisingly simple reduction of the program dependence problem to the may-alias problem. While both problems are undecid-able, providing a reduction between them has great practical importance. Program dependence information is used extensively in compiler optimizations, automatic program parallelizations, code scheduling in super-scalar machines, and in software eng...

متن کامل

A General Compiler Framework for Data Speculation Using DSCM

Getting precise alias information in a language that allows pointers, such as C, is expensive. One reason is that alias analysis should generate conservative (safe) alias information. Alias analysis assumes possible aliases when it can’t prove there are no aliases. The conservative alias information may greatly affect compiler optimizations. In this paper, we present a general framework to allo...

متن کامل

The Swift Java Compiler: Design and Implementation

We have designed and implemented an optimizing Java compiler called Swift for the Alpha architecture. Swift translates Java bytecodes to optimized Alpha code, and uses static single assignment (SSA) form for its intermediate representation (IR). The Swift IR is relatively simple, but allows for straightforward implementation of all the standard scalar optimizations. The Swift compiler also impl...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2004